/**
 * 1.网络
 * 1）什么是网络？
 * 网络就是信息传输和共享的虚拟平台
 * 2）什么是网络协议？
 * 信息在网络上进行传输时必须按一定的规则，这套规则就是网络协议
 * http协议
 * smtp协议
 * ftp协议
 * ...
 * 2.http协议
 * 1）什么是http协议？
 * http协议就是超文本传输协议，用于定义WEB浏览器与WEB服务器之间交换数据的过程以及数据本身的格式。
 * 2）http协议的细节
 * http协议是采用 请求/应答 实现数据交互。一次请求 一次应答。
 * 约束了浏览器以何种格式向服务端发送数据
 * 约束了浏览器应该以何种格式来接收客户端发送的数据
 * 约束了服务器应该以何种格式来反馈数据给浏览器
 * 约束了浏览器应该以何种格式来接收服务器反馈的数据
 * 3.网络请求与响应运行原理
 * 1）将用户输入的网址，找DNS服务器解析成IP地址
 * 2）根据IP地址请求服务器（请求头、请求主体）
 * 静态网页：
 * 3）服务器接收到请求，判断请求的网页是不是一个静态网页i
 * 4）如果是静态文件就直接从硬盘中读取，返回（html代码）给浏览器
 * 动态网页：
 * 5）服务器接收到请求，判断请求的网页是一个动态网页
 * 6）如果是动态网页则找到动态网页生成程序，实现生成html代码
 * 执行动态程序
 * 读写数据库
 * 将数据处理完成
 * 读取模版文件
 * 使用模版引擎将模版与数据进行整合
 * 生成html代码
 * 4.http状态码
 * 1）什么是状态码？
 * http状态码是服务器响应数据给客户端的状态编码，由3位数字组成。
 * 2）常见的状态码
 * 200 正常
 * 301 永久重定向
 * 304 文件未修改，可以使用缓存
 * 404 资源找不到
 * 500 服务器执行有错
 * 5.MIME类型
 * 1）什么是mime类型
 * mime类型就是文件类型的一种描述
 * 2）常见的mime类型
 * .html  text/html
 * .txt   text/plain
 * .css   text/css
 * .js    text/javascript
 * .json  text/json  application/json
 * .xml   text/xml   application/xml
 * .png   image/png
 * .jpg   image/jpeg
 * .gif   image/gif
 * .mp3   audio/mpeg
 * .mp4   video/mpeg
 * ...
 * 6.网络服务器
 * var http=require('http');
 * var server=http.createServer();
 * server.on('request',function(req,res){
 *    //req:请求流对象
 *    //res:响应流对象
 * });
 * server.listen(80,function(){
 *    console.log('服务器已经运行...');
 * });
 * 7.获取数据
 * 1）获取GET方式
 * GET方式传的值在URL后面，只要获取到url就能获取的到值。
 * req.url
 * 2)获取POST方式
 * POST方式传的值在 请求主体内，只能流的方式读取req对象
 * req.on('data',function(data){
 *    console.log(data);
 * });
 * 8.网页模版
 * 1）什么是网页模版？
 * 网页模版就是一个静态的HTML文件，如果要展示出数据就必须写成模版语法形式
 * 2）模版语法
 * <%%>
 * //输出语句
 * <%=变量%>
 * //判断语句
 * <%if(判断表达式){%>
 * ...
 * <%}%>
 * //循环语句
 * <%for(var i=0;i<=10;i++){%>
 * <%}%>
 * 3）模版引擎原理
 * 模版引擎可以读取模版文件、结合数据，渲染出最终的HTML字符串。
 */